PrecSezione 14.5: Distorsione lineare SuCapitolo 14: Transito nei circuiti e distorsioni Section 14.7: Distorsione di non linearitàSegue

## 14.6Equalizzazione↓

Come anticipato, si tratta dell’operazione necessaria qualora la funzione di trasferimento complessiva del mezzo trasmissivo e delle sue chiusure H(f)=Hi(f)Hq(f)Hu(f)
non soddisfi la condizione di canale perfetto, e può essere intrapresa inserendo elementi filtranti presso il trasmettitore (HT(f)) ed il ricevitore (HR(f)), realizzati in modo da ottenere HT(f)H(f)HR(f)=ae−j2πfτ. Nel seguito ci riferiamo a segnali di banda base, ovvero alle componenti analogiche di b.f. di segnali modulati.
Se non si utilizzano entrambi i filtri, ma uno solo di essi, si può delegare il compito dell’equalizzazione al solo HT(f), riservando ad HR(f) il ruolo di filtrare il rumore esterno alla banda di segnale, come fatto ai cap. 12↑ e 15↓. Nel caso quindi in cui la H(f) del canale sia nota a priori, la sua inversione può essere approssimata sintetizzando HT(f) mediante un metodo di progetto filtri analogici [620] [620]`http://en.wikipedia.org/wiki/Analogue_filter`.
D’altra parte, se l’equalizzazione è svolta solo in ricezione, si possono applicare tecniche volte a stimare la H(f) non nota [621] [621]Operazione necessaria se il canale cambia da un collegamento all’altro, come nel transito in una rete commutata, o nel caso di una comunicazione radiomobile., e quindi sintetizzare una realizzazione numerica di HR(f) tale da invertire H(f). In questo caso però si può determinare una “colorazione” del rumore in ingresso al ricevitore, che può essere esaltato anche di molto nelle bande per le quali |H(f)| è praticamente nullo, come per un canale con echi di ampiezza simile, vedi pag. 1↑.

### 14.6.1Equalizzazione numerica

Per le trasmissioni numeriche è già prevista la presenza di un filtro HT(f) con funzione di sagomatore di impulso (come componente del codificatore di linea (§ 5.1.2↑), mentre la teoria del filtro adattato (§ 9.5↑) mostra che realizzando [622] [622]Si veda l’eq. (17.29↑) a pag. 1↑, tralasciando il termine di fase lineare necessario a rendere hR(t) causale. HR(f)=H*T(f) si ottiene il minimo SNR all’istante di decisione; pertanto ora lo schema di elaborazione è del tipo
in cui HR(f)H*T(f)=G(f) assieme realizzano un filtro di Nyquist [623] [623]Sia che si abbia HR(f)=HT(f)=√(G(f)) come per il caso del ricevitore ottimo § 5.7↑, sia nel caso in cui HT(f)=G(f) e HR(f) filtra il rumore., e l’equalizzazione di H(f) è demandata per intero al ricevitore, per mezzo di HE(f), al cui ingresso si presenta il segnale
(18.48) y(t)=∞⎲⎳m=  − ∞amx(t−mTs)+ν(t)
che dipende oltre che dai simboli am della sequenza informativa, dalla risposta impulsiva complessiva x(t)=hT(t)*h(t)*hR(t), mentre ν(t) tiene conto dell’effetto di HR(f) su n(t). Il segnale y(t)
viene quindi campionato con periodo di campionamento τ≤Ts [624] [624]Dato che per evitare aliasing (§ 4.1.1↑) la frequenza di campionamento fc=(1)/(τ) deve risultare maggiore del doppio della massima frequenza presente in y(t), scegliamo (1)/(τ)= 2fs, ovvero adottiamo una frequenza di campionamento pari al doppio di quella di simbolo. Infatti, un segnale dati di banda base a coseno rialzato occupa una banda a frequenze positive pari a B=(fs)/(2)(1  +γ), e dunque scegliendo fc= 2fs ci cauteliamo anche nel caso di γ= 1. La scelta di porre τ<Ts viene indicata anche con il termine di fractionally spaced equalizer o fse.,ed elaborato realizzando HE(f) in forma numerica come un filtro fir(§ 9.8.1↑, vedi figura) con 2N+ 1 coefficienti cn, alla cui uscita si trova il segnale [625] [625]La (18.49↓) rappresenta l’uscita di un filtro fir anti-causale, dato che z(t) dipende da valori futuri di ingresso, fino a y(t+Nτ), mentre l’espressione causale che rispecchia la notazione usata nella figura dovrebbe essere z(t)=∑Nn=  −Ncny(t−nτ−Nτ), che corrisponde ad un semplice ritardo dell’ingresso di Nτ, trascurato per semplicità di notazione nel seguito.
(18.49) z(t)=N⎲⎳n=  −Ncny(t−nτ)
Osserviamo ora che qualora HE(f) riesca nel suo intento l’isi introdotta dal canale è completamente rimossa, e la sua uscita in corrispondenza degli istanti di simbolo z(mTs) dipende dal valore di un solo am, oltre che dal rumore filtrato via HR(f)HE(f); pertanto, i coefficienti cn possono essere scelti direttamente con l’obbiettivo di annullare l’isi, anziché con quello di invertire H(f); in particolare, la (18.49↑) è dello stesso tipo della (6.54↑) a pag. 1↑, e difatti l’approccio dello zero forcing ivi esposto è tuttora applicabile, tranne per il fatto che in quel caso è stata completamente ignorata la presenza del rumore; illustriamo dunque una tecnica che invece ne tiene conto.

#### 14.6.1.1Equalizzatore MMSE↓

Questa impostazione individua i coefficienti del filtro fir HE(f) come quelli di un filtro di Wiener [626] [626]`http://en.wikipedia.org/wiki/Wiener_filter`, ovvero in modo da minimizzare la potenza dell’errore commesso alla sua uscita, cioè tali da rendere minimo l’errore quadratico medio e2 (o mean square error) tra i campioni z(mTs) della (18.49↑) in uscita da HE(f), ed i corrispondenti valori am della sequenza informativa:
(18.50) e2=E{(z(mTs)−am)2}=E{(N⎲⎳n=  −Ncny(mTs−nτ)−am)2}
La minimizzazione di e2 si ottiene calcolandone le derivate rispetto ai ck ed eguagliando il risultato a zero, ovvero
(18.51) (∂)/(∂ck)e2 = 2E{(N⎲⎳n=  −Ncny(mTs−nτ)−am)y(mTs−kτ)}= = 2(N⎲⎳n=  −NcnE{y(mTs−nτ)y(mTs−kτ)}−E{amy(mTs−kτ)})
da cui si ottengono le condizioni
(18.52) N⎲⎳n=  −NcnℛY(n−k)= ℛYA(k) k= 0, ±1, ±2, ⋯, ±N
che rappresentano un sistema di 2N+ 1 equazioni nelle incognite cn, note come equazioni di Wiener-Hopf, e la cui matrice dei coefficienti e vettore dei termini noti sono costituiti rispettivamente dall’autocorrelazione ℛY(n−k)=E{y(mTs−nτ)y(mTs−kτ)} tra campioni del segnale ricevuto, e dall’intercorrelazione ℛYA(k)=E{y(mTs−kτ)am} tra i campioni di y(t) e la sequenza dei simboli trasmessi, dove il valore atteso è calcolato rispetto alla variabilità della sequenza am e del rumore.
Soluzione delle equazioni di Wiener-Hopf↓
In effetti, ℛY(n) e ℛYA(n) non sono note al ricevitore, ma nell’ipotesi di stazionarietà ed ergodicità per y(t) ed an, queste possono essere stimate a partire da una fase iniziale di apprendimento durante la quale viene trasmesso un segnale di test, per il quale il ricevitore calcola le medie temporali R̂Y(n)=(1)/(K)∑Kk= 1y(kTs−nτ)y(kTs) e R̂YA(n)=(1)/(K)∑Kk= 1y(kTs−nτ)ak, che quindi utilizza al posto delle medie di insieme nella (18.52↑).
Adottando quindi per la (18.52↑) una notazione matriciale del tipo
(18.53) Bc=d
dove B=[bnk]=[ℛY(n−k)] è una matrice (2N+ 1)×(2N+ 1), c=[cn] sono i coefficienti del filtro e d=[dn]=[ℛYA(n)], i coefficienti ottimi possono ottenersi come copt=B− 1d; la proprietà di simmetria di ℛY(n) rende poi B una matrice di Toepliz [627] [627]`http://en.wikipedia.org/wiki/Toeplitz_matrix`, per la quale esistono metodi che semplificano in parte la soluzione diretta del sistema di equazioni, vedi anche la nota 18.1.2.2↓ a pag. 1↓.
Metodo del gradiente
La (18.50↑) può essere minimizzata anche adottando metodi iterativi che evitano completamente il problema di risolvere la (18.53↑) in modo diretto. In particolare, può essere usata la tecnica nota come discesa del gradiente↓ [628] [628]`http://it.wikipedia.org/wiki/Discesa_del_gradiente`, in quanto e2 può essere interpretato come una funzione e2(c)( [629] [629]Infatti, sviluppando la (18.50↑) si ottiene e2(c)=∑Nn=  −N∑Nk=  −NcnckℛY(n−k)− 2∑Nk=  −NckℛYA(k)+E{a2m}, che è una forma quadratica (o paraboloide) e pertanto possiede un solo minimo globale.) dei coefficienti c, ed il suo gradiente gi alla iterazione i−esima è definito come un vettore i cui elementi sono le derivate parziali di e2 rispetto agli elementi di c, calcolate per un determinato valore ci del vettore dei coefficienti del filtro [630] [630] Dalla (18.51↑) osserviamo che g(ck) è valutabile come gk= 2(Bck−d).; pertanto il suo orientamento indica la direzione verso la quale e2(c)|c=ci cresce di più.
Scegliendo casualmente un vettore di coefficienti iniziale c0 (eventualmente nullo), ad ogni iterazione sono calcolati nuovi valeri dei coefficienti
ci+ 1=ci− Δgi
spostando cioè ogni coefficiente cn in direzione opposta alla relativa componente di g di una quantità proporzionale alla derivata parziale corrispondente, ed al valore del parametro Δ (un piccolo numero positivo) che determina la velocità di convergenza dell’algoritmo [631] [631]Una regola pratica suggerisce di porre Δ =(1)/(5(2N+  1)PY) in cui PY è la potenza ricevuta di segnale più rumore. Valori maggiori possono accellerare la convergenza, ma anche dar luogo ad instabilità della soluzione, mentre valori più piccoli rallentano la convergenza, ma possono produrre errori finali minori.. Quindi, viene calcolato un nuovo valore gi+  1(ci+ 1), ed il procedimento iterato fino a quando si verifica |ci+ 1−ci|<ε, nel cui caso si ritiene raggiunto l’ottimo copt.
Equalizzazione adattiva LMS↓
Il metodo esposto si basa sul calcolo ripetuto di gi= 2(Bci−d) (nota 252↑), ma... se la H(f) del canale varia nel tempo, lo stesso avviene per B e per d, così come per il valore dei coefficienti copt! In tal caso il metodo del gradiente si modifica, utilizzando ad ogni iterazione una stima dello stesso ed eguagliando la frequenza delle iterazioni con quella di simbolo: osserviamo infatti che la (18.51↑) permette di esprimere (a parte un fattore due) il gradiente anche come
(18.54) gm=E{emym}
in cui em=z(mTs)−am è l’errore commesso dall’equalizzatore rispetto al simbolo trasmesso (e, nella fase di apprendimento, noto in ricezione [632] [632]La sequenza dei simboli trasmessi è nota all’inizio della trasmissione, e spesso generata nella forma di una sequenza pseudo-noise. Dopo questa fase iniziale di apprendimento, l’equalizzatore commuta su di una modalità dipendente dalle decisioni, i cui sono invece usati i valori \widetildeak emessi dal decisore: se la probabilità di errore per simbolo non è troppo elevata, la maggior parte delle volte la decisione è esatta, ed il metodo continua a funzionare correttamente.) ed ym è il vettore dei 2N+ 1 campioni memorizzati nello stato del filtro al momento di produrre l’uscita z(mTs). La (18.54↑) viene quindi approssimata tralasciando di effettuare la media di insieme, e valutando la stima del gradiente come ĝm=emym, da usare poi nella formula di aggiornamento dei coefficienti cn [633] [633]Da un punto di vista intuitivo, la (18.55↓) si commenta notando che il generico coefficiente cn viene aumentato nel caso in cui em e yn sono di segno opposto, ovvero se l’uscita è troppo piccola (z(mTs)<am) ed il contributo dell’n-esima memoria (a cui corrisponde un cn positivo) va fatto pesare di più, oppure se l’uscita è troppo grande (z(mTs)>am) ed il contributo dell’n-esima memoria (a cui corrisponde un cn negativo) deve essere (in modulo) ridotto. Considerazioni opposte, nel caso em e yn abbiano lo stesso segno. :
(18.55) cm+ 1=cm−  Δemym
Il metodo ora esposto prende il nome di algoritmo del gradiente stocastico o lms [634] [634]`http://en.wikipedia.org/wiki/Least_mean_squares_filter` (least mean square).

#### 14.6.1.2Equalizzatore decision feedback↓

Nel caso in cui l’isi introdotta dal canale sia rilevante, i metodi descritti non sono più sufficienti, e l’equalizzatore deve far uso anche dell’informazione relativa agli errori commessi per i simboli già ricevuti in precedenza, prendendo il nome di decision feedback equalizer o dfe.
Ciò è realizzato mediante lo schema mostrato a lato, in cui il filtro di smoothing opera come discusso finora, mentre quello di feedback è anch’esso di tipo fir, ma opera alla frequenza di simbolo fs e viene alimentato dalle decisioni precedenti ãm [635] [635]Nella fase di apprendimento sono usati i valori am noti a priori, mentre in quella successiva si usano quelli ãm emessi dal decisore, supposti per la maggior parte esatti., la cui combinazione lineare è usata per correggere i valori emessi dal primo filtro: il valore in ingresso al decisore può quindi essere ora espresso come
zm=N1⎲⎳n= 0cny(mTs−nτ)−N2⎲⎳n= 1dnãm−n
I coefficienti dn del filtro di feedback possono essere anch’essi stimati in maniera adattiva mediante il metodo del gradiente stocastico, dando così luogo alla architettura computazionale di figura 14.17↓
Figure 14.17Architettura di un equalizzatore dfe basato sul gradiente stocastico
, in cui i cerchi con i simboli di sommatoria rappresentano l’aggiornamento dei coefficienti in accordo alla (18.55↑); e che permette di verificare il funzionamento real-time dell’algoritmo.

#### 14.6.1.3Equalizzatore di massima verosimiglianza↓↓

Le tecniche illustrate finora effettuano la decisione simbolo per simbolo, mentre il metodo che analizziamo ora produce una stima di quanto ricevuto solo dopo aver preso in esame una intera sequenza di N simboli, operando una maximum likelihood sequence detection o mlsd. L’esposizione inizia con il riconsiderare i campioni ym=y(mTs) del segnale ricevuto (18.48↑) come
(18.56) ym=N⎲⎳n= 0anh(mTs−nTs)+νm=h0am+N⎲⎳n= 0,n≠manhm−n+νm
in cui h(t)=hT(t)*hcanale(t)*hR(t), evidenziando le componenti di errore dovuta all’isi (la ∑n≠m) ed al rumore νm; impostando il problema come quello di stimare la sequenza a={am} conoscendo solo quella di osservazione y={ym}, la soluzione di massima verosimiglianza↓ individua la sequenza â in modo che p(y⁄a)|a=â sia massima.
La (18.56↑) evidenzia inoltre come la componente aleatoria di y sia tutta riconducibile a quella della sequenza di rumore υ, dato che l’effetto del canale si riduce ad una convoluzione discreta e dunque è deterministico; pertanto ym è una v.a. con media ym(a)=∑Nn= 0anhm−n e d.d.p. gaussiana pν(ym⁄a) condizionata ad a, che ne determina la sequenza dei valori medi. Se le realizzazioni νm sono staticamente indipendenti [636] [636]A questo proposito, è opportuno che HR(f) sia realizzato come un passa basso e non come un filtro ottimo, oppure che si effettui una operazione di sbiancamento di y(t)., la p(y⁄a) è il prodotto dei singoli contributi pν(ym⁄a), da valutare per tutti gli m e per tutti i modi di scegliere a, e quindi trovare â=argmax∏Mm= 0pv(ym⁄a) o, equivalentemente
(18.57) â=argminM⎲⎳m= 0− ln(pv(ym⁄a))
Quest’ultimo passaggio trova motivazione nella espressione della d.d.p. gaussiana pν(y)  =(1)/(√(2π)σν)e−((y−y)2)/(2σ2ν) per cui ln(pv(y))=  − ln(√(2π)σν)−((y−y)2)/(2σ2ν), e dato che σν è la stessa per tutti gli istanti m, il suo valore non contribuisce alla minimizzazione (18.57↑), che diviene pertanto
â=argminM⎲⎳m= 0(ym−ym(a))2
La sequenza ottima â è quindi quella che minimizza la somma degli scarti quadratici tra le osservazioni ym ed il corrispondente valore atteso, e viene trovata utilizzando l’agoritmo di Viterbi (pag. 1↓) riconducendo il problema a quello di individuare un percorso di minimo costo nell’ambito del traliccio che rappresenta tutte le possibili sequenze a.
Esempio
Ipotizziamo una hn=⎧⎨⎩ 1 con n= 0 0.5 con n= 1 ed una tramissione antipodale binaria con a={1,   − 1}; la (18.56↑) si scrive quindi come
ym=amh0+am− 1h1+νm

amam− 1 | ym
1,  1 | 1.5
1,    − 1 | 0.5
−  1, 1 | -0.5
−  1,  − 1 | -1.5

che rappresenta un filtro fir di primo ordine, la cui uscita in assenza di rumore assume uno dei 4 possibili valori mostrati in tabella in funzione di amam− 1. Il traliccio di ricerca può quindi essere tracciato come nella parte sinistra di fig. 14.19↓, identificando i valori di am− 1 con le righe + 1 e − 1, e quelli di am con il tratteggio (− 1) o la linea continua (1) degli archi che uniscono le colonne, considerando a− 1=a− 2= 1; sopra ogni arco, è quindi scritto il valore di ym corrispondente. Nella parte destra di fig. 14.19↓ gli archi sono invece etichettati con i costi (ym−ym(a))2 associati all’osservazione della sequenza y= 1.2,  − 0.9,  − 1.7.
Figure 14.19Traliccio per la decodifica di Viterbi e corrispondenti costi di verosimiglianza
Il metodo con cui l’agoritmo di Viterbi esplora il traliccio per individuare il percorso di minimo costo, e l’associata sequenza â, è illustrato a pag. 1↓ e non viene qui ripetuto.

#### 14.6.1.4Prestazioni

La figura a lato [637] [637]Tratta da J.G. Proakis, M. Salehi, Communication systems engineering, 2nd Ed., 2002 Prentice-Hall confronta Pe vs. SNR per una modulazione binaria antipodale nei casi di assenza di isi oppure di un canale con h0h1h2= 0.4, 0.8, 0.4, ed eseguendo l’equalizzazione con le tecniche illustrate. Come si vede, il mlsd si comporta meglio di tutti, e determina il valore delle prestazioni ottime. Al contrario, le prestazioni di mmse appaiono come le peggiori, essenzialmente a causa della amplificazione del rumore nelle bande in cui il canale ha guadagno nullo; d’altro canto, il dfe ne migliora sensibilmente le prestazioni, pur non raggiungendo quelle di mlsd. Ciò che rende poco diffuso l’mlsd però è l’elevata complessità computazionale, oltre che il ritardo da attendere per una decisione su intere sequenze, nonché le difficoltà a rendere adattativo l’algoritmo nel caso di condizioni non stazionarie.
PrecSezione 14.5: Distorsione lineare SuCapitolo 14: Transito nei circuiti e distorsioni Section 14.7: Distorsione di non linearitàSegue